<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        let obj = new Object;
        // 对象设置属性
        obj.name = '李四';
        // 在js中使用{}字面量 可以简化创建Object对象
        // 一个对象存在多个信息(属性) 在字面量语法中可以在{}中设置属性 每一个属性使用逗号分割 属性区分名称与值 名称与值之间使用冒号分割 属性名称可以使用引号包裹
        let compute = {
            type: "mac pro",
            memery: 16,
            disk: {
                type: '固态',
                size: 512
            },
            play: function () {
                console.log('打游戏')
            }
        }
        // 读取对象下属性  如果读取的属性值是其他的引用类型 可以继续按照对应的语法读取
        console.log(compute.type);
        console.log(compute.disk.size)
        compute.play();
        // 如果需要修改属性继续使用点语法
        compute.price = 14999;//如果price属性存在就修改值 不存在就添加
        // 属性的删除
        delete compute.memery
        
        // 使用数组语法操作对象下的属性
        let key = 'price';
        // 设置对象下叫做key的属性 
        compute.key = 16999;
        // 将compute对象下 key变量保存字符串的那个属性值进行设置
        compute[key] = 17999;
        console.log(compute);
        // 对象遍历 for in语句
        // 会自动将遍历对象下的每个属性名称以字符串分别赋值给key然后执行{}中的代码
        for(let key in compute){
            console.log(key)
            console.log(compute[key]);
        }

    </script>
</body>

</html>